package com.isoftstone.disk.service;

import com.isoftstone.disk.entity.FileInfoTreeEntity;
import com.isoftstone.disk.entity.RenameFile;
import com.isoftstone.platform.entity.PadingRstType;
import com.isoftstone.platform.model.entity.FileEntity;
import org.springframework.http.ResponseEntity;

import java.io.InputStream;
import java.util.List;

public interface DiskService {
    void addFile(String fileNameDesc, String name, InputStream inputStream);

    ResponseEntity<byte[]> download(String fileId);

    void saveFileInfToDatabase(String fileNameDesc, String name);

    void recycle(int fileId);

    PadingRstType<FileEntity> getFileInfolist();

    PadingRstType<FileEntity> getDeleteFileslist();

    void restore(int fileId);

    void delete(String fileId);

    String share(String fileId);

    PadingRstType<FileEntity> getSharedFileslist();

    void cancelSharing(int fileId);

    void sharing(int fileId);

    String preview(String fileId);

    List<FileInfoTreeEntity> queryFileInfoZtreeList(String roleuuid);

    void newFolders(String mid,String folderName);

    void newFiles(String mid, String fileNameDesc);

    PadingRstType<FileEntity> queryFileOfParent(Integer valueOf);

    int backToPardir(Integer valueOf);

    void moveFile(String id, String[] ps);

    void updateName(RenameFile renamefile);

    void copyFile(String id, String[] ps);
}
